/*
 * Cartograph.h: public functions to render maps
 */


#ifndef CARTOGRAPH_H
#define CARTOGRAPH_H

#define VERSION    "1.01"
#define	CONFIG     "Cartograph.ini"

typedef struct
{
	STRPTR world;      /* Nth world to render [1-5] */
	STRPTR name;       /* World name */
	int    mode;       /* 0=normal, 1=heightmap, 2=heightgray, ... */
	int    cave;       /* Cave only */
	int    flip;       /* Flip map */
	int    rotate;     /* Rotate 180 */
	int    daynight;   /* Which ambient light to render */
	int    exclude;    /* Block type to render [0-255] */
	int    nowater;    /* Ignore water */
	int    tex;        /* Flat <=> Noise */
	int    slice;      /* Layer to render [0-127] */
	int    inventory;  /* Inventory mode */
	APTR   notify;
	int    cancel;
	int    cur, total;
	APTR   image;

}	Options;

typedef struct World_t *        World;

struct World_t
{
	ListNode node;
	STRPTR   path;
	STRPTR   name;
	STRPTR   folder;
};

enum /* opt.mode */
{
	NORMAL,
	HEIGHTMAP,
	HEIGHTGRAY,
	SLICE,
	OBLIQUE,
	OBLIQUE_ANGLED,
	ISOMETRIC
};

#endif
